#ifndef SELFINFOWIDGET_H
#define SELFINFOWIDGET_H

#pragma once
#include"debug.h"
#include <QDialog>
#include<QLabel>
#include<QLineEdit>
#include<QPushButton>
#include<QGridLayout>


/////////////////////////////
///当前用户详情界面
/////////////////////////////
class SelfInfoWidget : public QDialog
{
     Q_OBJECT
public:
    SelfInfoWidget(QWidget* parent = nullptr);

    //绑定信号槽
    void initSignalAndSlot();

    //修改名字
    void clickNameModifyBtn();
    //提交
    void clickNameSubmitBtn();
    //更新界面
    void clickNameSubmitBtnDone();

    //修改标签
    void clickSignatureModifyBtn();
    //提交
    void clickSignatureSubmitBtn();
    //更新界面
    void clickSignatureSubmitBtnDone();

    //修改电话号码
    void clickPhoneModifyBtn();
    void clickPhoneSubmitBtn();
    void clickSendVerityCodeBtn();
    void clickPhoneSubmitBtnDone();

    //修改头像
    void clickAvatar();
    void clickAvatarDone();
private:
    // 头像
    QPushButton* avatar;
    // 名字
    QLineEdit* nameEdit;
    QLabel* nameLabel;
    QPushButton* nameModifyBtn;
    QPushButton* nameSubmitBtn;
    // 签名
    QLineEdit* descEdit;
    QLabel* descLabel;
    QPushButton* descModifyBtn;
    QPushButton* descSubmitBtn;
    // 电话
    QLineEdit* phoneEdit;
    QLabel* phoneLabel;
    QPushButton* phoneModifyBtn;
    QPushButton* phoneSubmitBtn;
    QLineEdit* verityCodeEdit;
    QPushButton* sendVerityCodeBtn;

    // 布局管理器
    QGridLayout* gridLayout;
    // 控制发送验证码按钮的倒计时
    int leftTime = 0;

    //临时保存手机号码，如果两次相同，则发送给服务器
    QString tempPhone;

    // 即将要修改的新的⼿机号.
    // 这⾥要通过这个成员来记录⼀下.
    // 确保发送验证码的⼿机, 和最终修改的⼿机是同⼀个⼿机号码.
    QString phoneToChange = "";
};

#endif // SELFINFOWIDGET_H
